1. 레코드 캡슐화하기

  • 데이터 레코드는 정의하고 사용하기 간단하지만 계산해서 얻을 수 있는 값 (Computed Value)와 그렇지 않은 값을 명확히 구분해야 하는 단점이 있다.
  • 따라서, 클래스로 레코드를 묶는다면 Class의 Getter를 통하여 값을 구분하는데 도움이 될 수 있다.

예시 코드

const myWaterCart = {price: 1500, amount: 5}
const totalPrice = myWaterCart.price * myWaterCart.amount
class Cart {
    constructor(data) {
    this._price = data.price
    this._amount = data.amount
    }

    get price() {
    return _price
    }

    set price(arg) {
    this._price = arg
    }

    get amount() {
    return _amount
    }

    set amount(arg) {
    this._amount = arg
    }

    // Compiuted Value
    get totalPrice() {
    return this._price * this._amount
    }
}

const myWaterCart = new Cart({price: 1500, amount: 5})
const totalPrice = myWaterCart.totalPrice

results matching ""

    No results matching ""